// 排行榜相关API接口
import request from '@/utils/request'
import {
	getDeepSeekApiKey,
	CONFIG,
	validateApiKey
} from '@/utils/config'

const api = {
	// 获取学科，对局模式，主题，模式等
	getQuestionList(params) {
		return request.get('/index.php/api/ques/getlist', params)
	},
	// 获取大师场，高级场等的内容
	getQuestionInfo(params) {
		return request.post('/index.php/api/ques/getinfo', params)
	},
	// 获取等级场题目
	getLevelQuestion(params) {
		return request.post('/index.php/api/ques/getques', params)
	},
	// 等级列表 我的勋章
	getLevelList({
		user_id
	}) {
		return request.get(`/index.php/api/ques/getlevellist?user_id=${user_id}`)
	},
	getLevelList2({
		user_id
	}) {
		return request.get(`/index.php/api/ques/getlevellist1?user_id=${user_id}`)
	},
	getLevelList3({
		user_id
	}) {
		return request.get(`/index.php/api/ques/getlevellist2?user_id=${user_id}`)
	},
	getmaplist({
		type
	}) {
		return request.get(`/index.php/api/ques/getmaplist?type=${type}`)
	},
	getmapdetail({
		map_id
	}) {
		return request.get(`/index.php/api/ques/getmapdetail?map_id=${map_id}`)
	},
	// 登录
	login(params) {
		return request.post('/index.php/api/user/third', {
			platform: 'wechat',
			...params
		})
	},
	// 修改个人资料
	updateUserInfo(params) {
		return request.post('/index.php/api/user/profile', params)
	},
	// 文件上传
	uploadFile(filePath, formData = {}) {
		return request.upload('/index.php/api/common/upload', filePath, formData)
	},
	// 获取用户信息
	getUserInfo(params) {
		return request.post('/index.php/api/user/index', params)
	},
	// 获取公告列表, 答题规则
	getAnnouncementList(params) {
		return request.post('/index.php/api/ques/getgonglist', {
			type: 'page',
			...params
		})
	},

	// 商品列表
	getGoodsList(params) {
		return request.get('/index.php/api/ques/getgoodslist', params)
	},
	// 商品详情
	getGoodsDetail(params) {
		return request.post('/index.php/api/ques/getgoodsdetail', params)
	},

	// 积分兑换
	exchangePoints(params) {
		return request.post('/index.php/api/score/exchange', params)
	},
	// 兑换记录
	getExchangeRecords(params) {
		return request.post('/index.php/api/score/myExchange', params)
	},
	// 积分记录
	getPointsRecords(params) {
		return request.post('/index.php/api/score/logs', params)
	},
	// 排队答题接口  支付
	getPayQuiz(params) {
		return request.post('/index.php/api/ques/topay', params)
	},
	// 轮询查询房间状态
	getRoomStatus(params) {
		return request.post('/index.php/api/ques/roomstatus', params)
	},

	// 兑换记录详情
	getExchangeRecordDetail(params) {
		return request.post('/index.php/api/score/myExchangedetail', params)
	},
	// 实时排队
	getRealTimeQueue(params) {
		return request.post('/index.php/api/ques/getnowqueue', params)
	},
	// 提交答案
	submitAnswer(params) {
		return request.post('/index.php/api/ques/quessubmit', params)
	},
	// 查看结果
	getQuestionResult(params) {
		return request.post('/index.php/api/ques/queueinfo', params)
	},
	// 查看排名
	getQuestionRank(params) {
		return request.post('/index.php/api/ques/getrank', params)
	},
	// 我的答题记录
	getQuestionlog(params) {
		return request.post('/index.php/api/ques/getmyqueue', params)
	},
	// 关于我们
	getdalist(params) {
		return request.post('/index.php/api/ques/getdalist', params)
	},
	getscorelist(params) {
		return request.post('/index.php/api/user/getscorelist', params)
	},
	getquanlist(params) {
		return request.post('/index.php/api/user/getquanlist', params)
	},
	getsharelist(params) {
		return request.post('/index.php/api/ques/getsharelist', params)
	},
	getansinfo(params) {
		return request.post('/index.php/api/ques/getansinfo', params)
	},
	// DeepSeek AI 聊天接口
	chatWithDeepSeek(params) {
	  const apiKey = getDeepSeekApiKey();  // 获取API密钥
	
	  // 不使用验证函数，如果需要可以取消注释使用
	  // const validation = validateApiKey(apiKey);
	  // if (!validation.valid) {
	  //   return Promise.reject(new Error(validation.message));
	  // }
	
	  // 执行POST请求
	  return request.post('/api/v1/chat/completions', params, {
	    baseURL: CONFIG.DEEPSEEK.BASE_URL,
	    headers: {  // 注意是 headers，不是 header
	      'Authorization': 'Bearer sk-104e0bcafb5c4178b72d713cd4a22579',  // 使用动态API密钥
	      'Content-Type': 'application/json'  // 设置请求头为 JSON 类型
	    }
	  })
	  .then(response => {
	    console.log('Response:', response);  // 打印服务器响应
	    return response;  // 返回响应结果
	  })
	  .catch(error => {
	    console.error('Error:', error);  // 打印错误信息
	    throw error;  // 抛出错误
	  });
	},


}

export default api